use std::path::PathBuf;
use structopt::StructOpt;

/// a network scanning and viewing tool
#[derive(Debug, StructOpt)]
#[structopt(name = "url-tool", about = "a network scanning and viewing tool")]
pub struct Config {
    #[structopt(name = "URL", parse(from_str))]
    /// the url to be scanned or viewed
    pub url: String,

    /// the address or config file
    #[structopt(short = "f", long, parse(from_os_str))]
    pub file: Option<PathBuf>,

    /// scanning the target url
    #[structopt(short = "s", long)]
    pub scan: bool,

    /// view the html code of the target url
    #[structopt(short = "v", long)]
    pub view: bool,

    /// print detail of error or info message
    #[structopt(short = "d", long)]
    pub debug: bool,

    /// just concat the basic url and the suffix directly [only in scan]
    #[structopt(short = "j", long)]
    pub join: bool,
}
